var userManage = {
    getQueryCondition : function(data) {
        var param = {};
        //组装排序参数
        if (data.order&&data.order.length&&data.order[0]) {
            switch (data.order[0].column) {
                case 0:
                    param.orderColumn = "project_id";//数据库列名称
                    break;
                default:
                    param.orderColumn = "project_id";//数据库列名称
                    break;
            }
            //排序方式asc或者desc
            param.orderDir = data.order[0].dir;
        }
        //组装分页参数
        param.startIndex = data.start;
        param.pageSize = data.length;
        param.draw = data.draw;

        param.access_token = $.cookie("access_token");

        param.projectId = $("#search-projectId").val();

        return param;
    },
    editItemInit : function(item) {

    },
    deleteItem : function(_table,item) {

    },
    showItemDetail: function(item){

    }
};

// $(function(){
    function loadProjectError() {
        var $table = $("#datatables-project-error-list");

        var _table = $table.dataTable($.extend(true, {}, CONSTANT.DATA_TABLES.DEFAULT_OPTION, {
            ajax: function (data, callback, settings) {
                //封装请求参数
                var param = userManage.getQueryCondition(data);
                param.projectId = $("#search-projectId").val();
                $.ajax({
                    type: "post",
                    url: "/sys/loadProjecErrorList",
                    cache: false,	//禁用缓存
                    data: param,	//传入已封装的参数
                    dataType: "json",
                    success: function (result) {
                        //异常判断与处理
                        if (result.errorCode) {
                            alert("查询失败");
                            return;
                        }
                        //封装返回数据
                        var returnData = {};
                        returnData.draw = data.draw;//这里直接自行返回了draw计数器,应该由后台返回
                        returnData.recordsTotal = result.total;//总记录数
                        returnData.recordsFiltered = result.total;//后台不实现过滤功能，每次查询均视作全部结果
                        returnData.data = result.pageData;
                        //调用DataTables提供的callback方法，代表数据已封装完成并传回DataTables进行渲染
                        //此时的数据需确保正确无误，异常判断应在执行此回调前自行处理完毕
                        callback(returnData);
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                        alert("查询失败");
                    }
                });

            },
            //绑定数据
            columns: [
                {
                    data: "debugName",//错误名称
                    orderable: false//禁用排序
                },
                {
                    data: "debugState",//错误状态
                    orderable: false//禁用排序
                },
                {
                    data: "debugUrl",//页面url
                    render: function(data, type, row, meta) {
                        return '<div style="width:100px;height:20px;overflow: hidden;text-overflow: ellipsis;" title="'+data+'"><nobr>'+data+'</nobr></div>';
                    },
                    orderable: false//禁用排序
                },
                // {
                //     data: "happenNum",//发生次数
                //     orderable: false//禁用排序
                    // render: function(data, type, row, meta) {
                    //     return '<div style="width:100px;height:20px;overflow: hidden;text-overflow: ellipsis;" title="'+data+'"><nobr>'+data+'</nobr></div>';
                    // }
                // },
                // {
                //     data: "influenceUserNum",//影响用户数
                //     orderable: false//禁用排序
                //     // render : function(data,type, row, meta){
                //     //     return new Date(parseInt(data)).toLocaleString().replace(/:\d{1,2}$/,' ');
                //     // }
                // },
                {
                    data: "createTime",//发生时间
                    render : function(data,type, row, meta) {
                        var newDate = new Date();
                        newDate.setTime(data);
                        return newDate.toLocaleString();
                    },
                    orderable: false//禁用排序
                },
                {
                    data: null,//字段名
                    defaultContent: "",//无默认值
                    orderable: false//禁用排序
                }
            ],

            "createdRow": function (row, data, index) {
                //不使用render，改用jquery文档操作呈现单元格
                var $btnShow = $('<a type="button" class="btn-show" style="cursor:pointer;text-decoration:none;" data-toggle="modal" data-target="#myModal2">查看</a>');
                var $btnEdit = $('<a type="button" class="btn-del" style="cursor:pointer;text-decoration:none;">修改</a>');
                $('td', row).eq(4).append($btnShow).append("&nbsp;&nbsp;");//.append($btnEdit);
//   	        	$('td', row).eq(6).append($btnEdit);
            },
            "drawCallback": function (settings) {
                //渲染完毕后的回调
                //默认选中第一行
                //$("tbody tr",$table).eq(0).click();
            }
        })).api();//此处需调用api()方法,否则返回的是JQuery对象而不是DataTables的API对象
        //查询
        // document.getElementById("search-projectId").onchange=function(){
        //     $.cookie("search-projectId",$("#search-projectId").val(),{ expires: 365, path: '/' });
        //     _table.draw();
        // }
        $("#search-projectId").change(function () {
            _table.draw();
            loadCharts();
        });
        $("#btn-search").click(function () {
            _table.draw();
        });
        //行点击事件
        $("tbody", $table).on("click", "tr", function (event) {
            $(this).addClass("active").siblings().removeClass("active");
            //获取该行对应的数据
            var item = _table.row($(this).closest('tr')).data();
            userManage.showItemDetail(item);
        });
        //按钮点击事件
        $table.on("click", ".btn-show", function () {
            //点击查看按钮
            var item = _table.row($(this).closest('tr')).data();
            var id = item.id;
            send(
                '/sys/loadDebugDetails/'+id,
                {},
                function (data) {
                    if(data.result == '0'){
                        var d = data.data;
                        var newDate = new Date();
                        newDate.setTime(d.createTime);
                        $("#show-createTime").text(newDate.toLocaleString());
                        $("#show-debugType").text(d.debugType);
                        $("#show-pageTitle").text(d.pageTitle);
                        $("#show-pageUrl").text(d.pageUrl);
                        $("#show-debugName").text(d.debugName);
                        $("#show-browserMessage").text(d.browserMessage);
                        $("#show-lineNum").text(d.lineNum);
                        $("#show-rowNum").text(d.rowNum);
                        $("#show-browserName").text(d.browserName+"("+d.browserVersions+")");
                        $("#show-jsEngine").text(d.jsEngine+"("+ d.jsEngineVersions+")");
                        $("#show-systemName").text(d.systemName+"("+d.systemVersions+")");
                        $("#show-brandName").text(d.brandName+"("+d.brandModel+")");
                        $("#show-ip").text(d.ip);
                        $("#show-address").text(d.address);
                        $("#show-operator").text(d.operator);
                        $("#show-jsPluginVersions").text(d.jsPluginVersions);
                        $("#show-userAgent").text(d.userAgent);
                        if(d.systemName.toLowerCase().indexOf("windows") == 0){
                            $("#show-pcormobile").text("pc");
                        }else{
                            $("#show-pcormobile").text("mobile");
                        }
                        if(Number(d.userAgent.toLowerCase().indexOf("nettype")) > 0){
                            var uaarr = d.userAgent.split("NetType/")[1].split(" ")[0];
                            $("#show-nettype").text(uaarr);
                        }else{
                            $("#show-nettype").text("WIFI");
                        }
                    }else{
                        layer.msg('数据获取失败');
                    }
                },
                function (res) {

                }
            );


        }).on("click", ".btn-del", function () {
            //点击删除按钮
            var item = _table.row($(this).closest('tr')).data();
            userManage.deleteItem(_table, item);
        });
        //影藏列
//	   	$('a').on( 'click', function (e) {
//	   		var cut = $(this).text()
//	   		if(cut.indexOf("显示")>-1){
//	   			$(this).text("影藏"+cut.split("示")[1])
//	   		}else{
//	   			$(this).text("显示"+cut.split("藏")[1])
//	   		}
//	        e.preventDefault();
//	        var column = _table.column( $(this).attr('data-column') );
//	        column.visible( ! column.visible() );
//	    } );
    }
// });


